package dominio

abstract class Aviso {
	
	@Property String mensaje
	
	new(){}
	
	new(String msj) {
		this.mensaje = msj
	}
	
	def boolean envioMail(String msj) {false}
	
	def boolean envioSMS(String msj) {false}
	
	def boolean hizoLlamada(String msj) {false}
	
}

class AvisoMail extends Aviso {
	
	@Property String destino
	@Property String asunto
	
	new(String msj) {
		super(msj)
	}
	
	override envioMail(String msj) {
		mensaje == msj	
	}
}

class AvisoSMS extends Aviso {
	
	@Property Integer numero
	
	new(String msj) {
		super(msj)
	}
	
	override envioSMS(String msj) {
		mensaje == msj	
	}
}

class AvisoLlamada extends Aviso {
	
	@Property Integer numero
	
	new(String msj) {
		super(msj)
	}
	
	override hizoLlamada(String msj) {
		mensaje == msj	
	}
	
}